package com.ruoyi.ctcx.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 保险主对象 tb_insurance_main
 * 
 * @author ruoyi
 * @date 2024-11-19
 */
public class TbInsuranceMain extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 投保人公司id */
    //@Excel(name = "投保人公司id")
    private String toubaoId;

    /** 被保险人公司id */
    //@Excel(name = "被保险人公司id")
    private String beibaoId;

    /** 保险人公司id */
    //@Excel(name = "保险人公司id")
    private String baoxianId;

    /** 经纪/代理公司id */
    //@Excel(name = "经纪/代理公司id")
    private String proxyId;

    /** 保单号码 */
    @Excel(name = "保单号码")
    private String insureNo;

    /** 保险合同名称 */
    @Excel(name = "保险合同名称")
    private String contractName;

    /** 险种 */
    @Excel(name = "险种")
    private String insureType;

    /** 保单期限，X年X月 */
    @JsonFormat(pattern = "yyyy-MM")
    @Excel(name = "保单期限", width = 30, dateFormat = "yyyy-MM")
    private Date insureLimit;

    /** 保险起期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "保险起期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date insureStartDate;

    /** 保险止期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "保险止期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date insureEndDate;

    /** 保险金额 */
    @Excel(name = "保险金额")
    private BigDecimal insureAmount;

    /** 保险费率 */
    @Excel(name = "保险费率")
    private BigDecimal insureRate;

    /** 保费，保险金额*保险费率 */
    @Excel(name = "保费，保险金额*保险费率")
    private BigDecimal premium;

    /** 删除标志 */
    private String delFlag;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setToubaoId(String toubaoId) 
    {
        this.toubaoId = toubaoId;
    }

    public String getToubaoId() 
    {
        return toubaoId;
    }
    public void setBeibaoId(String beibaoId) 
    {
        this.beibaoId = beibaoId;
    }

    public String getBeibaoId() 
    {
        return beibaoId;
    }
    public void setBaoxianId(String baoxianId) 
    {
        this.baoxianId = baoxianId;
    }

    public String getBaoxianId() 
    {
        return baoxianId;
    }
    public void setProxyId(String proxyId) 
    {
        this.proxyId = proxyId;
    }

    public String getProxyId() 
    {
        return proxyId;
    }
    public void setInsureNo(String insureNo) 
    {
        this.insureNo = insureNo;
    }

    public String getInsureNo() 
    {
        return insureNo;
    }
    public void setContractName(String contractName) 
    {
        this.contractName = contractName;
    }

    public String getContractName() 
    {
        return contractName;
    }
    public void setInsureType(String insureType) 
    {
        this.insureType = insureType;
    }

    public String getInsureType() 
    {
        return insureType;
    }
    public void setInsureLimit(Date insureLimit) 
    {
        this.insureLimit = insureLimit;
    }

    public Date getInsureLimit() 
    {
        return insureLimit;
    }
    public void setInsureStartDate(Date insureStartDate) 
    {
        this.insureStartDate = insureStartDate;
    }

    public Date getInsureStartDate() 
    {
        return insureStartDate;
    }
    public void setInsureEndDate(Date insureEndDate) 
    {
        this.insureEndDate = insureEndDate;
    }

    public Date getInsureEndDate() 
    {
        return insureEndDate;
    }
    public void setInsureAmount(BigDecimal insureAmount) 
    {
        this.insureAmount = insureAmount;
    }

    public BigDecimal getInsureAmount() 
    {
        return insureAmount;
    }
    public void setInsureRate(BigDecimal insureRate) 
    {
        this.insureRate = insureRate;
    }

    public BigDecimal getInsureRate() 
    {
        return insureRate;
    }
    public void setPremium(BigDecimal premium) 
    {
        this.premium = premium;
    }

    public BigDecimal getPremium() 
    {
        return premium;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("toubaoId", getToubaoId())
            .append("beibaoId", getBeibaoId())
            .append("baoxianId", getBaoxianId())
            .append("proxyId", getProxyId())
            .append("insureNo", getInsureNo())
            .append("contractName", getContractName())
            .append("insureType", getInsureType())
            .append("insureLimit", getInsureLimit())
            .append("insureStartDate", getInsureStartDate())
            .append("insureEndDate", getInsureEndDate())
            .append("insureAmount", getInsureAmount())
            .append("insureRate", getInsureRate())
            .append("premium", getPremium())
            .append("delFlag", getDelFlag())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
